package com.sky.service;


import com.sky.dto.*;
import com.sky.entity.Orders;
import com.sky.result.PageResult;
import com.sky.vo.OrderStatisticsVO;
import com.sky.vo.OrderSubmitVO;
import com.sky.vo.OrderVO;

import java.util.List;

public interface OrderService {
    //提交订单
    OrderSubmitVO submit(OrdersSubmitDTO ordersSubmitDTO);

    //历史订单
    PageResult page4app(Integer page, Integer pageSize, Integer status);

    //订单详情
    OrderVO orderDetail(Long orderId);

    //取消订单
    void cancel(Long orderId);

    //再来一单
    void repetition(Long orderId);


    //订单搜索
    PageResult conditionSearch(OrdersPageQueryDTO ordersPageQueryDTO);

    //各个状态的订单数量统计
    OrderStatisticsVO statistics();

    //接单
    void confirm(OrdersConfirmDTO ordersConfirmDTO);



    //拒单
    void reject(OrdersRejectionDTO ordersRejectionDTO);

    //用户催单
    Orders reminder(Long orderId);
}
